package edu.scau.pos.mapper;

import edu.scau.pos.domain.Product;
import edu.scau.pos.vo.ProductVo;
import edu.scau.pos.vo.SaleLineItemVo;
import edu.scau.tool.annotation.RequestLog;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface ProductMapper {
    ProductVo findProductBySn(String productSn);
    List<ProductVo> findAllProductAndStock();
    
    List<ProductVo> listAll();
    
    List<ProductVo> findProductList(ProductVo productVo);
    @RequestLog
    int insertProduct(Product product);
    @RequestLog
    int updateProduct(Product product);
    @RequestLog
    int deleteProductBySn(String productSn);
    int isExisted(String productSn);
    @RequestLog
    int batchUpdateStock(List<SaleLineItemVo> saleLineItemVoList);
    @RequestLog

    int batchAddStock(List<SaleLineItemVo> saleLineItemVoList);

    List<ProductVo> findProductListLimitOne(ProductVo productVo);
}
